<?php
// application/models/TblentrepriseMapper.php
class Application_Model_TblentrepriseMapper
{
        protected $_dbTable;

        public function setDbTable($dbTable)
        {
            if (is_string($dbTable)) {
                $dbTable = new $dbTable();
            }
            if (!$dbTable instanceof Zend_Db_Table_Abstract) {
                throw new Exception('Invalid table data gateway provided');
            }
            $this->_dbTable = $dbTable;
            return $this;
        }

        public function getDbTable()
        {
            if (null === $this->_dbTable) {
                $this->setDbTable('Application_Model_DbTable_Tblentreprise');
            }
            return $this->_dbTable;
        }

        public function save(Application_Model_Tblentreprise $tblentreprise)
        {
            $data = array(

'id'   => $tblentreprise->getId(),
'industry_id'   => $tblentreprise->getIndustry_id(),
'siret'   => $tblentreprise->getSiret(),
'last_updated_on' => date('Y-m-d H:i:s')
            );

            if (null === ($id = $tblentreprise->getId())) {
                unset($data['id']);
                $this->getDbTable()->insert($data);
            } else {
                $this->getDbTable()->update($data, array('id = ?' => $id));
            }
        }

        public function find($id, Application_Model_Tblentreprise $tblentreprise)
        {
            $result = $this->getDbTable()->find($id);
            if (0 == count($result)) {
                return;
            }
            $row = $result->current();
       $tblentreprise->setId($row->id)
       ->setIndustry_id($row->industry_id)
       ->setSiret($row->siret)
       ->setLast_updated_on($row->last_updated_on)
;
        }

        public function fetchAll()
        {
            $resultSet = $this->getDbTable()->fetchAll();
            $entries   = array();
            foreach ($resultSet as $row) {
                $entry = new Application_Model_Tblentreprise();
       $entry->setId($row->id)
       ->setIndustry_id($row->industry_id)
       ->setSiret($row->siret)
       ->setLast_updated_on($row->last_updated_on)
;
                $entries[] = $entry;
            }
            return $entries;
        }
}
